package com.liao.ticket.controller;

import com.alibaba.fastjson.JSON;
import com.liao.ticket.service.FlightService;
import com.liao.ticket.vo.Result;
import com.liao.ticket.vo.params.FlightParams;
import com.liao.ticket.vo.params.PageParams;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;

import java.util.Map;

/**
 * 接口测试成功
 * 1.0.1
 */
@RestController
@RequestMapping("flight")
public class FlightQueryController {
    @Autowired
    private FlightService flightService;

    // 通过 id 和 航班状态为0（未起飞） 查询 航班
    @GetMapping("one/{id}")
    public Result selectOne(@PathVariable Long id){
        return flightService.selectOneById(id);
    }

    // 通过 起飞日期（若为空则默认为当前日期） 和 起飞机场id 和 降落机场id 和 航班状态为0（未起飞） 查询 航班列表
    @GetMapping("list")
    public Result selectList(@RequestBody Map map) {
        Object flightParamsJson = map.get("flightParams");
        Object pageParamsJson = map.get("pageParams");
        FlightParams flightParams = JSON.parseObject(flightParamsJson.toString(), FlightParams.class);
        PageParams pageParams = JSON.parseObject(pageParamsJson.toString(), PageParams.class);
        return flightService.selectListByFidAndTidAndFlyTime(flightParams,pageParams);
    }
}
